/*
给定一个数组，将数组中的元素向右移动 k 个位置，其中 k 是非负数。

示例 1:

输入: [1,2,3,4,5,6,7] 和 k = 3
输出: [5,6,7,1,2,3,4]
解释:
向右旋转 1 步: [7,1,2,3,4,5,6]
向右旋转 2 步: [6,7,1,2,3,4,5]
向右旋转 3 步: [5,6,7,1,2,3,4]
示例 2:

输入: [-1,-100,3,99] 和 k = 2
输出: [3,99,-1,-100]
解释: 
向右旋转 1 步: [99,-1,-100,3]
向右旋转 2 步: [3,99,-1,-100]
说明:

尽可能想出更多的解决方案，至少有三种不同的方法可以解决这个问题。
要求使用空间复杂度为 O(1) 的 原地 算法。
*/

//暴力法
void rotate_violence(int* nums, int numsSize, int k){
   int temp, previous;
   for(int i=0; i < k; ++i){
       previous = nums[numsSize - 1];
       for(int j = 0; j < numsSize; ++j){
           temp = nums[j];
           nums[j] = previous;
           previous = temp;
       }

   }
}

int main(){
    int a[7]={1,2,3,4,5,6,7};
    rotate_violence(a,7,3);
    
    for(int i=0;i<7;i++){
        printf("%d,",a[i]);
    }
}
//反转

